CSV Searcher

A fast and efficient CSV file search tool with fuzzy matching capabilities.

Features

Building

Requires GCC with OpenMP support.

Compiling thanks to tsoding NoBuild (Nob) file : https://github.com/tsoding/nob.h First compile nob :

gcc -o nob nob.c
# Build with all optimizations
./nob -a

# Or build with specific flags
./nob -g -O -pedantic

Available Build flags:

Usage

search [OPTIONS] 

Options:
    -h, --help            Display help information
    -c, --correction      Enable fuzzy search/correction
    -ih, --input-header   Input CSV file with header
    -in, --input-noheader Input CSV file without header
    -q, --query           Search query
    -s, --separator       CSV separator character
        Default: ,
    -l, --limit          Limit number of results
        Default: 10
    -col, --column        Column to search (0=all)
        Default: 0
    -t, --type           Search type (0=all, 1=contains, 2=starts_with, 3=ends_with)
        Default: 0

Examples

Search in a CSV file with headers:

search -ih data.csv -q "John" -col 1

Search with fuzzy matching:

search -ih users.csv -q "Smith" -c -t 1

When viewing results:

Performance

TODO

License

This project is licensed under the MIT License.